package com.mdd.admin.controller.pay;

import com.mdd.admin.config.aop.Log;
import com.mdd.admin.service.pay.IDevPayService;
import com.mdd.admin.validate.pay.DevPayParam;
import com.mdd.admin.vo.pay.DevPayDetailVo;
import com.mdd.admin.vo.pay.DevPayListVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.List;

/**
 * 支付配置管理
 */
@Api(tags = "支付配置管理")
@RestController
@RequestMapping("api/pay")
public class DevPayController {

    @Resource
    IDevPayService iDevPayService;

    /**
     * 支付配置列表
     *
     * @return Object
     */
    @ApiOperation(value = "支付配置管理 - 列表")
    @GetMapping("/list")
    public List<DevPayListVo> list() {
        return iDevPayService.listPage();
    }

    /**
     * 支付配置详情
     *
     * @param id 主键ID
     * @return Object
     */
    @ApiOperation(value = "支付配置管理 - 详情")
    @GetMapping("/detail")
    public DevPayDetailVo detail(@Validated @RequestParam("id") Long id) {
        return iDevPayService.detail(id);
    }


    /**
     * 支付配置编辑
     *
     * @param devPayParam 参数
     * @return Object
     */
    @ApiOperation(value = "支付配置管理 - 编辑")
    @Log(title = "支付配置编辑")
    @PostMapping("/edit")
    public void edit(@Validated(value = DevPayParam.update.class) @RequestBody DevPayParam devPayParam) throws Exception {
        iDevPayService.edit(devPayParam);
    }


}
